#ifndef ROBOTAPPLICATION_H_
#define ROBOTAPPLICATION_H_

#include "RobotBase.h"
#include "PhysicsObject.h"

class RobotApp : public RobotBase
{
public:
	RobotApp(void);
    virtual ~RobotApp(void);
protected:

	virtual void createScene(void);
	virtual bool frameRenderingQueued(const Ogre::FrameEvent& evt);
	virtual void fire();
	virtual void bulletTerrain(Ogre::Terrain* pTerrain);

	virtual bool mousePressed( const OIS::MouseEvent& evt, OIS::MouseButtonID id );



	int frameCounter;

	btDynamicsWorld* world;
	btDispatcher* dispatcher;
	btCollisionConfiguration* config;
	btBroadphaseInterface* broadphase;
	btConstraintSolver* solver;

	btRigidBody* mGroundBody;
	btRigidBody* physicsBody;

	std::vector<PhysicsObject*> objects;

	PhysicsObject* testSphere;

	Ogre::NameGenerator* sphereGenerator;


};


#endif
